#ifndef __CPU_TOOL_QT_H_
#define __CPU_TOOL_QT_H_
//interface for QT
#ifdef __cplusplus
extern "C" {
#endif

int get_cpu_num(void);
/*
 * Class:     CpuTool
 * Method:    getScalingCurFreq
 * Signature: (I)I
 */
int get_scaling_cur_freq(int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getScalingMinFreq
 * Signature: (I)I
 */
int get_scaling_min_freq(int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getScalingMaxFreq
 * Signature: (I)I
 */
int get_scaling_max_freq(int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getScalingAvailableFrequences
 * Signature: (I)Ljava/lang/String;
 */
int get_scaling_available_frequences(char *result, int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getScalingAvailableGovernors
 * Signature: (I)Ljava/lang/String;
 */
int get_scaling_available_governors(char *result, int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getScalingGovernor
 * Signature: (I)Ljava/lang/String;
 */
int get_scaling_governor(char *result, int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getScalingSetSpeed
 * Signature: (I)I
 */
int get_scaling_setspeed(int cpuNum);

/*
 * Class:     CpuTool
 * Method:    setCpuGovernor
 * Signature: (Ljava/lang/String;I)I
 */
int set_cpu_governor(const char *result, int cpuNum);

/*
 * Class:     CpuTool
 * Method:    setScalingSetSpeed
 * Signature: (II)I
 */
int set_scaling_setspeed(int freq, int cpuNum);

/*
 * Class:     CpuTool
 * Method:    getCpuUsage
 * Signature: (IILjava/lang/String;)I
 */
int get_cpu_usage(int step, int total_steps, char *filename);

/*
 * Class:     CpuTool
 * Method:    getNetworkUsage
 * Signature: (IILjava/lang/String;)I
 */
int get_network_usage(int step, int total_steps, char *filename);

/*
 * Class:     CpuTool
 * Method:    getMemoryUsage
 * Signature: (IILjava/lang/String;)I
 */
int get_memory_usage(int step, int total_steps, char *filename);

/*
 * Class:     CpuTool
 * Method:    getDiskUsage
 * Signature: (IILjava/lang/String;)I
 */
int get_disk_usage(int step, int total_steps, char *filename);

/*
 * Class:     CpuTool
 * Method:    genJPGFile
 * Signature: (Ljava/lang/String;Ljava/lang/String;)I
 */
int gen_jpg_file(char *input_file, char *output_file);

/*
 * Class:     CpuTool
 * Method:    genPDFFile
 * Signature: (Ljava/lang/String;Ljava/lang/String;)I
 */
int gen_pdf_file(char *input_file, char *output_file);

/*
 * Class:     CpuTool
 * Method:    genPNGFile
 * Signature: (Ljava/lang/String;Ljava/lang/String;)I
 */
int gen_png_file(char *input_file, char *output_file);

/*
 * Class:     CpuTool
 * Method:    genCSVFile
 * Signature: (Ljava/lang/String;Ljava/lang/String;)I
 */
int gen_csv_file(char *input_file, char *output_file);
#ifdef __cplusplus
}
#endif
#endif
